package ar.edu.nc4cr.loader;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class DataClassMethod extends Data implements Serializable {
	private static final long serialVersionUID = 1L;
	private String name;
	private Class returnValue;
	private List<Class> exceptions = new ArrayList<Class>();
	private List<DataClassMethodParameter> parameters = new ArrayList<DataClassMethodParameter>();
	//Modificadores
	private boolean isAbstract;
	private boolean isFinal;
	private boolean isNative;
	private boolean isStatic;
	private boolean isSynchronized;
	private boolean isStrictfp;
	//Modificadores de visibilidad
	
	
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Class getReturnValue() {
		return returnValue;
	}
	public void setReturnValue(Class returnValue) {
		this.returnValue = returnValue;
	}
	public List<Class> getExceptions() {
		return exceptions;
	}
	public void setExceptions(List<Class> exceptions) {
		this.exceptions = exceptions;
	}
	public List<DataClassMethodParameter> getParameters() {
		return parameters;
	}
	public void setParameters(List<DataClassMethodParameter> parameters) {
		this.parameters = parameters;
	}
	public boolean isAbstract() {
		return isAbstract;
	}
	public void setAbstract(boolean isAbstract) {
		this.isAbstract = isAbstract;
	}
	public boolean isFinal() {
		return isFinal;
	}
	public void setFinal(boolean isFinal) {
		this.isFinal = isFinal;
	}
	public boolean isNative() {
		return isNative;
	}
	public void setNative(boolean isNative) {
		this.isNative = isNative;
	}
	public boolean isStatic() {
		return isStatic;
	}
	public void setStatic(boolean isStatic) {
		this.isStatic = isStatic;
	}
	public boolean isSynchronized() {
		return isSynchronized;
	}
	public void setSynchronized(boolean isSynchronized) {
		this.isSynchronized = isSynchronized;
	}
	public boolean isStrictfp() {
		return isStrictfp;
	}
	public void setStrictfp(boolean isStrictfp) {
		this.isStrictfp = isStrictfp;
	}
	public void addParameter(DataClassMethodParameter parameter){
		this.parameters.add(parameter);
	}
	public void addException(Class exception){
		this.exceptions.add(exception);
	}

}
